import("//llvm/utils/TableGen/tablegen.gni")

tablegen("Options") {
  visibility = [ ":wasm" ]
  args = [ "-gen-opt-parser-defs" ]
}

static_library("wasm") {
  output_name = "lldWasm"
  configs += [ "//llvm/utils/gn/build:lld_code" ]
  deps = [
    ":Options",
    "//lld/Common",
    "//llvm/lib/BinaryFormat",
    "//llvm/lib/Demangle",
    "//llvm/lib/IR",
    "//llvm/lib/Object",
    "//llvm/lib/Option",
  ]
  sources = [
    "Driver.cpp",
    "InputChunks.cpp",
    "InputFiles.cpp",
    "LTO.cpp",
    "MapFile.cpp",
    "MarkLive.cpp",
    "OutputSections.cpp",
    "OutputSegment.cpp",
    "Relocations.cpp",
    "SymbolTable.cpp",
    "Symbols.cpp",
    "SyntheticSections.cpp",
    "Writer.cpp",
    "WriterUtils.cpp",
  ]
}
